package cc.rengu.oltp.service.common.dao;

import cc.rengu.oltp.service.common.entity.SmsInfo;

import java.util.List;

/**
 * 短信验证码表操作接口类
 * Created by 王成 on 2020/2/7
 */
public interface SmsInfoMapper {
    /**
     * 登记短信验证码信息
     *
     * @param smsInfo 短信验证码信息
     * @return 0-成功，其它-失败
     * @throws Exception 异常
     */
    int insertSmsInfo(SmsInfo smsInfo) throws Exception;

    /**
     * 根据主键更新短信验证码信息
     *
     * @param smsInfo 短信验证码信息
     * @return 0-成功，其它-失败
     * @throws Exception 异常
     */
    int updateSmsInfoByPrimaryKey(SmsInfo smsInfo) throws Exception;

    /**
     * 根据主键查询短信验证码信息
     *
     * @param instId       多法人标识
     * @param verifySeqNum 短信验证码验证流水号
     * @return 短信验证码信息
     * @throws Exception 异常
     */
    SmsInfo selectSmsInfoByPrimaryKey(String instId, String verifySeqNum) throws Exception;

    /**
     * 根据手机号统计在某个时间到当前时间所申请的短信验证码信息
     *
     * @param instId        多法人标识
     * @param mobileNo      手机号
     * @param smsCreateTime 短信申请统计开始时间
     * @return 短信验证码信息
     * @throws Exception 异常
     */
    List<SmsInfo> selectSmsIfoByMobileNo(String instId, String mobileNo, String smsCreateTime) throws Exception;
}
